package main

import "fmt"

func main() {
	//break
	for i := 0; i < 5; i++ {
		if i == 3 {
			break
		}
		fmt.Println(i)
	}

	// 多层嵌套 跳出多层循环
label1:
	for i := 0; i < 2; i++ {
		for j := 0; j < 5; j++ {
			if j == 3 {
				break label1
			}
			fmt.Printf("i=%v-j=%v\n", i, j)
		}
	}

	//continue
	//跳过循环
	for i := 0; i < 10; i++ {
		if i == 5 {
			continue
		}
		fmt.Println(i)
	}

	//continue跳过多层循环到外面,然后又再次执行循环
label2:
	for i := 0; i < 2; i++ {
		for j := 0; j < 5; j++ {
			if j == 3 {
				continue label2
			}
			fmt.Printf("i=%v-j=%v\n", i, j)
		}
	}

	//goto  直接跳转到指定的代码下，跳过部分代码
	var n = 30
	if n > 24 {
		fmt.Println("成年人")
		goto label3
	}

	fmt.Println("aaa")
label3:
	fmt.Println("bbb")
	fmt.Println("ccc")
}
